package string;

/**
 * java.lang.StringBuilder
 * 用于修改字符串的一个工具, 内部维护一个可变的char数组, 提供了便于修改字符串的相关方法(增删改查)
 */
public class StringBuilderDemo {
    public static void main(String[] args) {
        StringBuilder builder = new StringBuilder("好好学习java");
        System.out.println(builder);
        /*
        //append: 追加内容到字符串的最后
        builder.append(",为了找个好工作");
        System.out.println(builder);//好好学习java,为了找个好工作

        //toString: builder的toString方法将修改好的字符串获取回来
        String str = builder.toString();
        System.out.println(str);//好好学习java,为了找个好工作

        //replace: 替换操作
        builder.replace(9,16,"就是为了改变世界");
        System.out.println(builder);//好好学习java,就是为了改变世界

        //delete: 删除操作, 将指定范围内的字符串删除
        builder.delete(0,8);
        System.out.println(builder);//,就是为了改变世界

        //insert: 将给定内容插入到指定位置
        builder.insert(1,"活着");
        System.out.println(builder);//,活着就是为了改变世界

        //reverse: 反转字符串
        builder.reverse();
        System.out.println(builder);//界世变改了为是就着活,
         */

        /*
        StringBuilder提供的这几个修改内容的操作返回值都是它本身, 这样可以便于我们在一系列修改操作中连续调用
         */
        builder.append(",为了找个好工作").replace(9,16,"就是为了改变世界").delete(0,8).insert(1,"活着").reverse();
        System.out.println(builder);

    }
}
